package dao;

import static org.junit.Assert.*;

import java.sql.SQLException;

import modele.EtatInscription;
import org.junit.Test;

public class TestEtatInscriptionDAO extends AgriotesDbTestCase {

	@Test
	public void testInserer() throws SQLException {
		EtatInscription etat = new EtatInscription("en cours");
		EtatInscription etat2 = null;
		EtatInscriptionDAO dao = new EtatInscriptionDAO();
		dao.inserer(etat);
		etat2 = dao.lireParId(etat.getId());
		assertEquals("Objet n'est pas identique ", etat, etat2);
		assertEquals(8, etat.getId());
	}

	@Test
	public void testModifier() throws SQLException {
		EtatInscription etat = new EtatInscription("en attente");
		EtatInscriptionDAO dao = new EtatInscriptionDAO();
		EtatInscription etat2 = null;
		EtatInscription etat3 = null;
		dao.inserer(etat);
		etat2 = etat;
		etat2.setLibelle("toujours en attente");
		dao.modifier(etat2);
		etat3 = dao.lireParId(etat2.getId());
		assertTrue("Objet n'est pas identique ", etat2.equals(etat3));
	}

	@Test
	public void testSupprimer() throws SQLException {
		EtatInscription etat = new EtatInscription("encore en attente");
		EtatInscriptionDAO dao = new EtatInscriptionDAO();
		dao.inserer(etat);
		dao.supprimer(etat.getId());
		assertNull("Objet existe encore",
				dao.lireParId(etat.getId()));
	}
}